Engineers use compression (also called source coding or source encoding) to reduce the bit rate of digital video. Compression decreases the cost of storing and transmitting video information by converting the information into a lower bit rate form. Decompression (also called decoding) reconstructs a version of the original information from the compressed form. A “codec” is an encoder/decoder system.
Over the last 25 years, various video codec standards have been adopted, including the ITU-T H.261, H.262 (MPEG-2 or ISO/IEC 13818-2), H.263, H.264 (MPEG-4 AVC or ISO/IEC 14496-10) standards, the MPEG-1 (ISO/IEC 11172-2) and MPEG-4 Visual (ISO/IEC 14496-2) standards, and the SMPTE 421M (VC-1) standard. More recently, the H.265/HEVC standard (ITU-T H.265 or ISO/IEC 23008-2) has been approved. A video codec standard typically defines options for the syntax of an encoded video bitstream, detailing parameters in the bitstream when particular features are used in encoding and decoding. In many cases, a video codec standard also provides details about the decoding operations a video decoder should perform to achieve conforming results in decoding. Aside from codec standards, various proprietary codec formats define other options for the syntax of an encoded video bitstream and corresponding decoding operations.
Some codec standards and formats use intra-picture prediction when compressing a picture. In general, for intra-picture prediction, the sample values of a current block are predicted using the neighboring sample values. The neighboring sample values, which are called reference sample values, have been encoded and reconstructed (during encoding) or reconstructed (during decoding) before the current block. Conventionally, reference sample values in the nearest row (adjacent row) above the current block and reference sample values in the nearest column (adjacent column) left of the current block are available for use in intra-picture prediction of the current block. Some intra-picture prediction modes are directional, or angular, modes in which reference sample values are propagated along a prediction direction into the current block. Other intra-picture prediction modes such as DC (average) prediction mode and planar prediction mode are not directional, but instead use combinations of reference sample values to predict the sample values of the current block. During encoding, after intra-picture prediction, differences (called residual values) between the original sample values of the current block and predicted sample values of the current block can be calculated and encoded. During decoding, the residual values for the current block can be decoded and combined with the predicted sample values of the current block to reconstruct the sample values of the current block.
Conventionally, intra-picture prediction uses reference sample values in the adjacent row above the current block and/or reference sample values in the adjacent column left of the current block. In some cases, the reference sample values do not provide for effective intra-picture prediction. This might be the case, for example, when the reference sample values in the adjacent row/column include noise due to capture (i.e., capture noise) or compression (i.e., quantization error, reconstruction noise). Or, as another example, this might be the case when there is an object in the adjacent row/column that occludes an object shown in the current block. Whatever the cause, in some cases, intra-picture prediction using the reference sample values of an adjacent row/column is ineffective.